home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / comm / superv22.zip / SUPER.DOC < prev    next >
Text File  |  1986-12-18  |  22KB  |  551 lines

  1.                 SUPERCOM resident Int 14 driver
  2.                            Version 2.0
  3.                     (C) Copyright 1986, 1987
  4.                           Doctor Debug
  5.                          Pittsburgh, Pa
  6.                        All Rights Reserved
  7.  
  8.          As  with all the Doctor's software,  SUPERCOM    
  9.          has  been tested and by all indications  works as 
  10.          described under all reasonable  conditions. 
  11.          However, the good doctor cannot be responsible 
  12.          for damages,  heartbreak,  outbreaks of war or 
  13.          acts  of  God  caused  by  the  use  of   this 
  14.          software.    As it   is Shareware, distribution  
  15.          of this package is  encouraged  so long  as  the 
  16.          programs  and  documentation  are   unaltered. 
  17.          Please  read  the contribution information  at       
  18.          the end of this document.
  19.  
  20.  
  21.      This document will give the command syntax and function 
  22. descriptions for SUPERCOM version 2.0. It will also highlight the 
  23. differences between Version 1 and Version 2.
  24.  
  25. WHAT IS SUPERCOM AND WHAT IS IT DOING ON  MY COMPUTER?
  26.  
  27. SUPERCOM is a replacement for the normal BIOS interrupt 14, which 
  28. handles asynchronous communications.  The support through BIOS is 
  29. so pitifully inadequate that it is almost impossible to write 
  30. secure, reliable communications software using the four functions 
  31. they give you. SUPERCOM gives you 16 useful functions and a 
  32. variable length receive buffer. It has been designed with 
  33. interface to high level languages in mind, and in fact includes 
  34. Turbo Pascal procedures to utilize all of SUPERCOM's functions.
  35.  
  36. HOW DO I RUN SUPERCOM?
  37.  
  38. SUPER.COM must be run before any applications program can use it, 
  39. for it attaches itself to BIOS.
  40. .pa
  41. COMMAND SYNTAX:
  42.           SUPER [/I] [/Cnn] [/X]
  43. WHERE:
  44.           /I indicates that SUPERCOM is to function in Interrupt 
  45.           Mode. The default is Polling Mode, which was the only 
  46.           method available in version 1. (See below for a 
  47.           description of these modes).
  48.          
  49.           /Cnn sets the size, in K,  of SUPERCOM's receive 
  50.           buffer. (Default = 4K). SuperCom will accept anything 
  51.           from 1 to 99, but buffer sizes above 60K will cause 
  52.           unpredictable results.
  53.  
  54.           /X enables XON/XOFF processing. If SUPERCOM receives an 
  55.           XOFF (^S) over the active COM port, all transmits are 
  56.           suspended until an XON (^Q) is received. This is an 
  57.           extremely useful device as well as an extremely 
  58.           dangerous one. If no XON is received, your system is 
  59.           hung. Typing an Alt Q from the keyboard will clear this 
  60.           condition. NOTE: The XON and XOFF characters are not 
  61.           placed in the receive buffer.
  62.  
  63.     Note that simply typing SUPER and pressing Enter will load 
  64. SUPERCOM in exactly the same configuration as Version 1.
  65.  
  66.      You will be given a message which indicates that SUPERCOM is 
  67. loaded and your system prompt will return. At this point your 
  68. computer will behave entirely normal. It is like a big car with a 
  69. Turbocharger in it - the extra power isn't used until you 
  70. activate it. 
  71.            
  72.      You activate SUPERCOM and utilize its many features via 
  73. normal INT 14 calls. Below is a lit of the functions available 
  74. and what they do.
  75.  
  76. Function 0 - Set Communications Parameters
  77.      Entry:    AH = 0
  78.                AL = Initialization parameters
  79.                     (Same as original INT 14)
  80.  
  81.      Return:   Status returned in AX 
  82.  
  83.      Notes:    This works exactly like the old INT 14 function 0, 
  84.                and in fact is called by SUPERCOM function 12. Do 
  85.                not use this function to initialize the port; use 
  86.                function 12. However, if you wish to change the 
  87.                line parameters (baud rate, parity, etc) after the 
  88.                SUPERCOM port has been opened, use this function 
  89.                to prevent disconnection.
  90. .pa               
  91. Function 1 - Send Character 
  92.      Entry:    AH = 1
  93.                AL = Character to Send
  94.               
  95.      Return:   High bit of AL set if error occurred
  96.  
  97.      Notes:    There is no fundamental difference between this 
  98.                function and the original INT 14 Function 1.
  99.  
  100.     
  101. Function 2 - Receive Character
  102.      Entry:    AH = 2
  103.      
  104.      Return:   AL has character.
  105.                AH is zero unless error occurred.
  106.      
  107.      Notes:    This will timeout after about 6 seconds.
  108.  
  109. Function 3 -   Port Status
  110.      Entry:    AH = 3
  111.  
  112.      Return:   Status returns in AH and AL as in old INT 14.
  113.  
  114. Function 4 -   Clear Buffer
  115.      Entry:    AH = 4
  116.  
  117.      Return:   None
  118.      
  119.      Note:     Empties the receive buffer.
  120.  
  121. Function 5 - Block Receive
  122.      Entry:    AH = 5
  123.                DX = Port (0 or 1)
  124.                CX = Size of desired block
  125.                ES:BX  = address for data
  126.      
  127.      Return:   Specified number of characters placed in [ES:BX]
  128.                AH nonzero if error occurred.
  129.  
  130.      Note:     Will time out as in Function 2. The Checksum 
  131.                calculation (formerly returned in CX) is no longer 
  132.                supported.
  133.  
  134. Function 6 -   Block Send
  135.      Entry:    DX = port (0 or 1)
  136.                CX = size of block
  137.                ES:BX = Address of data to send
  138.                
  139.      Return:   AX will have status codes
  140. .pa
  141. Function 7 -   Buffer status
  142.      Entry:    AH = 7
  143.      
  144.      Return:   BX = number of characters waiting in receive 
  145.                buffer
  146.  
  147. Function 8 - Get Character
  148.      Entry:    AH = 8
  149.                DX = Port (0 or 1)
  150.  
  151.      Return:   If character is available in buffer, it is 
  152.                returned in AL. If no characters are waiting, AL 
  153.                returns as 0 (nul). 
  154.  
  155.      Note:     Character is removed from the receive buffer. If 
  156.                there is a chance there will be nuls in the 
  157.                receive data, use function 7 to determine whether 
  158.                a character is available. This is the equivalent 
  159.                of INKEY$ for the Com port.
  160.  
  161. Function 9 - Set Port
  162.      Entry:    AH = 9
  163.                DX = Port (0 or 1) to buffer
  164.  
  165.      Return:   none
  166.  
  167.      Note:     Use this to switch ports in mid-stream. Use 
  168.                Function 12 to set the port initially.
  169.  
  170. Function 10 (0AH) - Enable/Disable SUPERCOM
  171.      Entry:    AH = 0A
  172.      
  173.      Return:   None
  174.  
  175.      Note:     Used internally - use Functions 12 and 13 to 
  176.                accomplish this function. This function toggles 
  177.                whether SUPERCOM is active or inactive. If 
  178.                inactive, all INT14 calls go to original BIOS 
  179.                interrupt.
  180.  
  181. Function 11 (0BH) - SUPERCOM Active Status
  182.      Entry:    AH = 0B
  183.     
  184.      Return:   AH = 1 if SUPERCOM Active
  185.                AH = 0 if SUPERCOM Inactive (passing calls to 
  186.                BIOS)
  187.  
  188.      Note:     Again, mainly for internal use, but if you need a 
  189.                quick check use this.
  190. .pa
  191. Function 12 (0CH) - Open SUPERCOM port
  192.      Entry:    AH = 0C
  193.                AL = Initialization Parameters (as in Function 0)
  194.                DX = Port (0 or 1)
  195.  
  196.      Return:   AX will have status codes
  197.  
  198.      Notes:    This is how you activate SUPERCOM and enable all 
  199.                the features. If you need to change some line 
  200.                parameters (baud rate, parity, etc.) while the 
  201.                SUPERCOM port is open, use Function 0.
  202.  
  203. Function 13 (0DH) - Close SUPERCOM port
  204.      Entry:    AH = 0DH
  205.                DX = Port (0 or 1)
  206.      
  207.      Return:   None
  208.  
  209.      Notes:    This disables buffering of incoming characters and 
  210. removes either the timer interrupt or the Comm interrupt from the 
  211. system interrupt chain. Be sure your program performs a Close 
  212. before exiting, especially if you are using Receive Polling.
  213.  
  214. Function 14 (0EH) - Peek Buffer
  215.      Entry:    AH = 0E
  216.  
  217.      Return:   If a character is available in the buffer it is 
  218.                returned in AL, but IS NOT removed from the 
  219.                buffer. If no character is available, AL returns